HBase出现的原因:
HBase作为面向列的数据库运行在HDFS之上,HDFS缺乏随即读写操作,HBase正是为此而出现。HBase以Google BigTable为蓝本,以键值对的形式存储。项目的目标就是快速在主机内数十亿行数据中定位所需的数据并访问它。
HBase是一个数据库,一个NoSql的数据库,像其他数据库一样提供随即读写功能,Hadoop不能满足实时需要,HBase正可以满足。如果你需要实时访问一些数据,就把它存入HBase。
你可以用Hadoop作为静态数据仓库,HBase作为数据存储,放那些进行一些操作会改变的数据。
HBase:
HBase是一个管理系统,数据依然是存在HDFS中,但是HBase管理的数据具有自己的组织结构,能够满足我们快速查询某一些数据的特点,而HDFS做不到。
HDFS和HBase如何用哪一个?
1.两者可以配合使用,即数据可以存储在HDFS中,同时也存储在HBase中(两者的数据可以稍有不同,比如一个数据比较全,另外一个根据需求,可以少一些),如果需要实时查询某些数据时,使用HBase,进行Hive统计,或者MapReduce运算时,使用HDFS数据。
2.MapReduce的 输入输出,可以设置为HBase
mapreduce编程模型之hbase表作为数据源输入输出
http://blog.csdn.net/liuyuan185442111/article/details/45306193
2.Hive也可以对HBase进行操作。
http://www.cnblogs.com/npumenglei/p/how_to_use_hive_load_data_from_hbase.html
http://blog.csdn.net/itjavaer/article/details/47397307
http://blog.csdn.net/jiedushi/article/details/7325292